package com.zy.service;

import com.fasterxml.jackson.core.JsonProcessingException;
import com.zy.bean.po.Node;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zy.parser.logicflow.LfNode;

import java.util.List;

/**
 * @author hanhuafeng
 * @createDate 2023-05-31 15:37:36
 * @description 流程图节点
 */
public interface NodeService extends IService<Node> {

    /**
     * 更新流程图节点
     *
     * @param updateNode  更新的节点
     * @param chartCode   流程图编码
     * @param versionCode 版本编码
     */
    void updateNodeByLfNode(List<LfNode> updateNode, String chartCode, String versionCode) throws JsonProcessingException;

    /**
     * 复制节点
     *
     * @param chartCode      流程图编码
     * @param oldVersionCode 旧版本编码
     * @param versionCode    新版本编码
     */
    void copyNode(String chartCode, String oldVersionCode, String versionCode);
}
